﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;
using System.Data.SqlClient;
using System.Data.Objects;
using System.Data.Objects.DataClasses;

namespace smartvoid
{
    public partial class Login : System.Web.UI.Page
    {
        private SmartVoidEntities SmartVoidContext;
        
        protected void Page_Load(object sender, EventArgs e)
        {
            SmartVoidContext = new SmartVoidEntities();
        }

        protected void Button1_Click(object sender, EventArgs e)
        {
            //Al hacer click en el Boton, se verifica que haya informacion correcta en los campos y se procede a verificar
            //Si el usuario y contraseña existen
            //PD: No importa como se escriba el Usuario, da lo mismo escribir Jboronat o JBoRoNaT, se usa la Funcion ToLower al verificar.
            
            if (txtUsuario.Text.Trim() == "")
            {
                //El campo usuario está vacio o solo tiene espacios
            }

            else if (txtClave.Text.Trim() == "")
            {
                //La clave esta vacia o solo tiene espacios
            }

                
            else //Si los campos están Ok
            {
                //SqlConnection conn = new SqlConnection("Data Source=localhost;Initial Catalog=SmartV-1;Integrated Security=True");
                //SqlDataAdapter adapter = new SqlDataAdapter("Select Usuario, Contraseña from Usuarios where Usuario = " + "'" + txtUsuario.Text.ToLower() + "'" + "And Contraseña = " + "'" + txtClave.Text + "'",conn);
                //DataSet dsLogin = new DataSet();
                //adapter.Fill(dsLogin, "Login");

                //if (dsLogin.Tables[0].Rows.Count != 0)
                //{
                //    //El usuario SI existe
                    
                //    Response.Write("El usuario SI existe");
                //    Session.Add("Usuario", dsLogin.Tables[0].Rows[0][0].ToString());
                //    dsLogin.Clear();
                //    Server.Transfer("Index.aspx");
                    
                //}

                //else
                //{
                //    //EL usuario NO existe.
                //    Response.Write("El usuario NO existe");
                //}

                var usuario = from user in SmartVoidContext.Usuarios
                                  where user.u_Usuario == txtUsuario.Text && user.u_Contraseña == txtClave.Text
                                  select user;
                
                Usuario usuarioLogueado = usuario.FirstOrDefault<Usuario>();
                
                if (usuarioLogueado == null)
                {
                    Response.Write("El usuario NO existe");
                }

                else
                {
                    Response.Write("El usuario SI existe");
                    Session.Add("Usuario", usuarioLogueado);
                    Response.Redirect("Principal.aspx");
                }

            }



        }

        protected void linkRegistrarse_Click(object sender, EventArgs e)
        {
            Server.Transfer("Registrar.aspx");
        }
    }
}